package com.kuang.controller;

import com.kuang.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
@RequestMapping("/user")
public class UserController {

    @GetMapping("/u1")
    public String test1(String name,Model model){
        //1.接收前端参数 这里只要和前端上传的参数名一致就可以直接获取
        System.out.println("接收到的前端的参数是："+name);
        //2.将返回的结果传递给前端
        model.addAttribute("msg",name);

        //3.跳转视图
        return "test";
    }

    @GetMapping("/u2")
    public String test2(@RequestParam("username") String name, Model model){
        //1.接收前端参数 这里只要和前端上传的参数名一致就可以直接获取
        System.out.println("接收到的前端的参数是："+name);
        //2.将返回的结果传递给前端
        model.addAttribute("msg",name);

        //3.跳转视图
        return "test";
    }

    //前端接收的是一个对象：id,name,age

    /**
     * 1.接收前端用户传入的参数，判断参数的名字，假设名字直接在方法上，可以直接使用
     * 2.假设你传入的是一个类，他回去把你上传的地址和类内部的字段名进行匹配 有的封装进去 没有(没传某个字段/传了错误的字段名)的就为空(0\null)
     */
    @GetMapping("/u3")
    public String test3(User user){
        System.out.println(user);
        return "test";
    }

    @GetMapping("/u4")
    public String test4(ModelMap map){


        return "test";
    }

}
